System and method for proximity detection

ABSTRACT

The present invention is for a system and method for determining the proximity of a mobile device to a location without the use of a satellite based or other location awareness system, nor a stationary beacon of any kind. Instead, the mobile device monitors radio frequency broadcast identification codes from nearby mobile devices, and determines if the set of detected identification codes is sufficiently similar to a weighted set of identification codes attributed to specified location. If the calculation of similarity meets the confidence conditions of the system, notification is made that the customer or visitor has arrived. The invention utilizes a combination of confidence interval computation, machine learning, and fault tolerance mechanisms to optimize the success of correctly detecting that the device is near the relevant location.

This application for patent claims priority from provisional patentapplication 61/453,943.

FIELD OF THE INVENTION

The present invention generally relates to the field of navigation,specifically the determination of the proximity of a mobile device to alocation.

BACKGROUND OF THE INVENTION

Navigation is a fundamental objective of transportation and as old aproblem as the evolution of animals from plants. Biological systemsevolved a number of very clever methods for navigation, roughlycategorized as allothetic or idiothetic navigation. Allotheticnavigation is defined as the use of external cues from the environmentfor determining location. Idiothetic navigation is defined as the use ofinternal systems for navigation and orientation, such as the inner earvestibular canals in humans used for balance. Analogous systems inmachines for allothetic systems are GPS navigation, and gyroscopicorientation for idiothetic navigation.

The wide availability and commonplace implementation of satellite basednavigation systems, such as GPS, since the 1990's, has overshadowedalternative navigation systems and aids. Satellite based systems areperceived to be a panacea for all navigation and orientation problems.In practice, however, since navigation often involves not simplylocation information, but relevance and context, a single method fornavigation is not optimal for every problem. In machines, as in nature,systems most appropriate to individual problems are significantly moreefficient and effective than one-size-fits-all approaches.

Satellite based systems have a number of inherent shortcomings, the mostproblematic among these is dependence on clear lines of sight tomultiple satellites. Any disruption in a clear line of sight causesimmediate failure. Any time a user is indoors, in a garage, or in anurban “canyon” between tall buildings, the system falters or fails.Satellite systems require significant power consumption in order tofunction at optimal performance.

The present problem of determining the arrival of a particular customerat a relevant location has been addressed as a strictly geo-locationnavigational problem, or as a strictly proximity detection problem.Solutions that address this problem as a geo-location navigation problemtypically prefer to utilize a satellite based location aware sensorsystem, such as GPS, COMPASS, Galileo, or GLONSS. A mobile system mustcontinuously monitor the current satellite based position against acomprehensive catalog of relevant geographic features. A typicalimplementation for such a system is identified in U.S. Pat. No.7,385,529 Hersch et. al. concerning the detection of a package delivery.

Another implementation of a geo-location/navigation based system isdescribed in U.S. Pat. No. 6,218,916 Gross et. al., which concerns thedetection (and prevention) of train locomotive collisions by determiningthe real-time location of the locomotives. These exemplar satellite/GPSsystems work well for the specific context they are used in, but sufferfrom the same shortcomings as all such systems for otherproximity/navigation applications. Among such problems is themaintenance or otherwise real-time access to a complex database withaccurate information regarding latitude/longitude perimeters of allrelevant locations.

An extension of satellite based navigation to common proximity detectionproblems is the geo-fencing solution, in which proximity to a locationis defined by a perimeter surrounding a geographic location aslatitude/longitude geometry, as in U.S. Pat. No. 7,780,522 by Lutnick,which concerns the determination of taxes on commerce made withingeo-fenced areas.

All satellite based proximity/navigation solutions, including suchgeo-fencing solutions fail for all sheltered or indoor customer-arrivalproblems, such as arrival of a customer at a particular store in a mallor a particular office, such as a medical office, within a largerfacility, such as a shopping mall or office complex.

A commonly proposed solution to the customer-arrival application of theproximity/navigation problem which overcomes the limitations ofsatellite based solutions is the use of a location beacon system. U.S.Pat. No. 6,529,164 Carter, describes a beacon based approach fortracking personnel or objects within a building utilizing the personnelproximity to radio frequency beacons within the facility. Although themost widely adopted type of solution, these systems require theinstallation, service, and maintenance of specialized and perhapsproprietary hardware at one or more locations in or around a facility,and are impossible to modify or adjust without changing the facilityinstalled beacon hardware.

No solutions have been proposed for the customer-arrival problem whichdo not rely upon a satellite based system, nor provide an adaptable andcontext sensitive system which utilizes only existing facility andcustomer devices.

SUMMARY OF THE INVENTION

In accordance with the present invention, the problem of detecting thearrival of a customer, visitor, or object at a specified location orfacility and announcing the arrival, is solved by monitoring radiofrequency broadcast identification codes from nearby mobile devices, anddetermining if the set of detected identification codes is sufficientlysimilar to a weighted set of identification codes attributed to aspecified location. If the calculation of similarity meets theconfidence conditions of the system, notification is made that thecustomer or visitor has arrived. Expected arrival times, such asappointment schedules are utilized as supplemental information forconfidence computation. An option for the customer or visitor toannounce arrival provides fault-tolerance. The system adapts to changesin the facility characteristics over time by adjusting and improving theaccuracy of the confidence computation.

It is an object of the present invention to detect the proximity of amobile device to a specified location by the detection and analysis ofidentification codes from mobile devices associated with the locationonly.

It is an object of the present invention to utilize the detection of oneor more nearby Bluetooth Media Access Control (MAC) addresses frommobile devices associated with a specified location for determiningproximity to the location.

It is an object of the present invention to utilize a confidencecomputation derived from a weighted set of detected identification codesto determine whether such detection indicates arrival at the specifiedlocation.

It is an object of the present invention to initiate such detectionprocess only after the proximity of the mobile device to the user'svehicle is determined by detecting an identification code broadcast froma manufacturer or after-market device installed on the vehicle.

It is an object of the present invention to utilize informationregarding user scheduled appointments at the specified location toimprove the accuracy of the confidence computation.

It is an object of the present invention to utilize a calibration orlearning adjustment process to improve the confidence computation byadjustment of parameters of the computation.

It is an object of the present invention to utilize an optionalcapability of the user to announce arrival at the specified locationwith a software initiated communication from the user's mobile device.

It is an object of the present invention to operate as a customerarrival notification system for vehicle service facilities.

It is an object of the present invention to operate as a customerarrival notification system for retail establishments.

It is an object of the present invention to operate as a patient arrivalnotification system for health care facilities.

It is an object of the present invention to communicate theidentification of the user who has arrived at the specified location forthe purpose of entering such identification into a customer servicequeue.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a typical environment for the customer-arrival inventionembodiment application for a customer arriving by vehicle at a servicefacility. In the drawing, three service advisors and a customer vehicleare represented, along with communication to the system data hub. TheBluetooth short range wireless communication protocol and Media AccessControl (MAC) address are chosen in this embodiment as the signalcarrier and identification code.

FIG. 1A is a detail from FIG. 1 depicting the physical region overlap orintersection in which the identification of all three mobilephones/users would be detectable for a customer or visitor entering sucha region.

FIG. 2 is a flowchart illustrating an overview of the process for thepreferred embodiment of the invention.

FIG. 3 is a swim lane flowchart illustrating the detailed process anddata flow separated by the portions of the process implemented by thevarious components of the system including the customer (mobilephone/device), service advisor (mobile phone/device), and the data hub(Internet based secure data server).

FIG. 4 is a flow chart detail for the arrival confidence computation.

DETAILED DESCRIPTION OF THE INVENTION

In the preferred embodiment of the present invention, a vehicle servicefacility desires to improve efficiency and customer service by notifyingservice assistants at the facility when customers have arrived at thefacility. Customers may or may not have service appointments in advanceof their arrival. Customers or users of the service facility have anapplication available on their mobile phone to optionally send a manualnotification of arrival: “I am here”.

Service advisers, service assistants, and supervisors at the vehicleservice facility each carry mobile devices registered with the decisionsystem. Such mobile devices may be smartphones, tablets, or both. Suchdevices may have an application available and installed on them as aclient application which receives the arrival event notification fromdecision system of the present invention.

FIG. 1 depicts an example configuration of the preferred embodimentcontext of the invention. In FIG. 1, the customer (mobile phone) 108 isapproaching 107 the vehicle repair facility 105 in his vehicle 109.Three service advisors or other people associated with the facility aredepicted A 102, B, 103, and C 104. The customer 108, vehicle 109, andservice advisors 102, 103, and 104, all have Bluetooth enabled cellphones on their person. Each Bluetooth component of these devices has aunique Media Access Control (MAC) address identification code. All MACaddresses of devices associated with the facility 105 are registeredwith the data hub 111.

In the embodiment shown in FIG. 1, each Bluetooth device has a maximumrange capability. The overlap or intersection of the ranges of the showndevices 102, 103, and 104 is depicted by the range perimeter 101. Whenthe customer enters the perimeter where all three devices are detectedsimultaneously, or within a defined interval timespan, the devicecommunicates 110 this set of MAC address codes to the data hub 111. Thedata hub then performs a confidence calculation against its database ofknown MAC addresses to assess the likelihood that a customer has arrivedfor service. If the set meets such criteria, the arrival notification iscommunicated 112 to the relevant service advisors at the facility.

FIG. 1A is a detailed illustration of the range overlap perimeter 101from FIG. 1. In this detail, each service advisor 101A, 102A, and 103Ais shown with their respective device broadcast range limits 104A, 105A,and 106A. The overlap region where the broadcasts of all three devicescan be detected is depicted by the perimeter 107A of heavy dashed linescorresponding to 101 from FIG. 1.

FIG. 2 is a flowchart illustrating the overall system process. First,all users must register with the data hub 201 to begin operating thearrival announcement system on their mobile device. Once registered andrunning, the system periodically checks for proximity of the user'svehicle by scanning for the registered vehicle Bluetooth or otherwireless communication MAC address or identification code 202. Ifvehicle proximity is detected, the device begins to scan for nearbyBluetooth MAC address codes 203. Detected codes are periodically sent tothe data hub for comparison to known MAC address codes for serviceadvisors and other MAC addresses associated with one or more servicefacilities 204. This comparison is the confidence computation discussedin more detail below. If the computation exceeds a confidence thresholdor is within the confidence interval boundary, arrival at the identifiedfacility is indicated by sending an announcement to the appropriateservice advisor for the facility, and a confirmation is sent to the user205. If a user notices that no announcement has been sent, the abilityto manually notify the service advisor is available by the “I am here”application on the user's mobile device 205. False positive and falsenegatives are communicated to the data hub so that the confidencecalculation may be adjusted or calibrated 206. When the user departsfrom the vehicle and thus terminates proximity to the vehicle, the scanand detect process terminates 207.

FIG. 3 is a detailed diagram and flow chart illustrating how the processof arrival detection is divided as swim lanes between the customer'smobile device 301, the service advisor's mobile device 302, and thesystem data hub 303. After the initialization of the application on theuser's mobile device, the device begins to monitor for the user'svehicle Bluetooth MAC ID 304. Multiple users with multiple vehicles maybe registered. If this user-vehicle proximity continues for minimumperiod shown as 120 seconds 305, the mobile device begins to scan andperiodically communicate the detected Bluetooth MAC ID's to the systemdata hub. MAC ID's sent to the system hub are grouped according to a thecodes detected during a limited time interval 306. Depending on theregistered identity and vehicle identity communicated to the data hub ofthe for the user, the data hub compares the detected Bluetooth MAC IDset to one or more of the following, service advisor MAC ID's 307, otherregistered customer MAC ID's associated with a given facility 308, andother vehicle MAC ID's associated with the facility 309. A vector ortensor of the detected MAC ID values is compared against an exemplarvector or tensor corresponding to the weighted associated set of MACID's for the facility. Among available methods for computing theconfidence of similarity, the vector dot product is used to compute theangle between the vectors, a generalized representation of thesimilarity 312. If the computer confidence level (in this embodiment theangle between the vectors), is within the defined interval or exceeds aconfidence threshold 313, an arrival is indicated and an announcement issent to the relevant service advisor identifying both the system userand the vehicle (the identity for each having been sent by the user tothe data hub) 315.

After announcement of arrival has been sent to the service advisor 315,the service advisor confirms the arrival or non-arrival of the announceduser and vehicle 304. As detailed further below, the confidence rulesare adjusted or vector component weights adjusted by the indication oftrue positives, false positives, and false negatives 312.

FIG. 4 is a detail flowchart corresponding to the confidence computationprocess. Confidence computation is initiated and performed by the systemdata hub for each set of MAC ID's sent to it by participating systemusers 401. The confidence computation begins with the assembly of thedetected MAC ID's available from one or more sources 402. For identifiedMAC ID's, the vector component weight is assigned according to systemrules 403 and a vector corresponding to the available identified set isformed 404 for comparison by dot product calculation to the mostappropriate facility exemplar vector 405. The computed dot product isthen tested against a threshold for arrival confidence or tested againsta high confidence boundary or interval 406. If this criteria is met,announcement of a user and vehicle arrival is sent to a service advisor407.

If the high confidence interval is not met 406, the computed confidencemeasurement is compared against a secondary expanded boundary or lowerthreshold 408. If the secondary confidence level is met, the systemchecks for a service appointment scheduled by the user at the servicefacility indicated. If the user is scheduled for a service appointmentat or within a limited time frame of the current MAC ID set analyzed409, announcement of user arrival is sent to the designated serviceadvisor for the facility 407. If the system indicated that the user hasarrived at the incorrect facility, an optional embodiment andconfiguration of the system notifies both the user and the designatedfacility as well as the facility service advisor with the scheduledappointment are notified of the error for coordination of any neededactions. If no level of confidence is reached that the user has arrivedat any facility, the system continues to scan MAC ID's and operateprovided the user stays in proximity to his vehicle 410.

If a confirmed arrival occurs or an adverse condition occurs, the systemreviews its computation makes proportionate adjustments to itsconfidence threshold or input vector/tensor component weighting. If thesystem detects one of three events: confirmation of an accurate arrival,a manually sent arrival by a user while the system was operational, or anegative confirmation of user arrival following an automated arrivalannouncement, the confidence rule calibration process is initiated. Ifthe indicated event is an accurate arrival confirmation by a serviceadvisor, the event is considered a true positive, and the weights ofvector components for present MAC ID's currently detected by the userwhich resulted in an accurate announcement are increased. If the systemreceives a counter-confirmation by a service advisor indicating that anarrival announcement was incorrect, the system considers the event afalse positive and adjusts the vector component weights corresponding tothe input MAC ID's and dynamically adjusts the confidence threshold. Ifthe system receives a manual arrival notification by a users while thesystem was operating for that user, the system considers such an event afalse negative, and adjusts the vector component weights correspondingto the input MAC ID's and dynamically adjusts the confidence threshold.Once the calibration is computed, the results are logged and systemvector component weights are updated at the data hub. Following thesystem update or no indication of an adverse event, the system returnsto its normal detection cycle.

The implications of the present invention's numerous potentialconfigurations and embodiments are far reaching. Although the preferredembodiment described here is for the application of the system to thearrival of a customer at a repair facility for vehicles, the effectiveutility of the system for outdoor and indoor (and indoor/outdoorcombination) versions of this system differentiate it from currentlyavailable alternative solutions. Such embodiments include arrival of abank customer, a frequent retail customer, a patient at a health carefacility, or an employee reporting for off-site work.

Although the invention has been described in terms of the preferredembodiments, one skilled in the art will recognize many embodiments notmentioned here by the discussion and drawing of the invention.Interpretation should not be limited to those embodiments specificallydescribed in this specification.

We claim:
 1. A system for detecting a user's mobile device in proximityto a location comprising: a plurality of known mobile devices capable ofa wireless short range data communication protocol; each of saiddetected known mobile devices having a unique associated digitalidentity value; each of said detected known mobile devices beingassociated with a one or more known locations; said detected knownmobile devices are capable of being, and may or may not be, located atassociated locations while the system is operating; at least one usermobile device capable of a wireless short range data communicationprotocol; said user mobile device capable of detecting said any of saidknown devices including each device's unique associated digital identityvalue; said user mobile device capable of long distance wireless datacommunication; a central server computer capable of data communicationwith said user mobile device; said central server computer hosting adata processing system which accepts as input sets of said detectedknown device identity values from said user mobile device; said centralcomputer hosting a database of values corresponding to selectedlocations and associated said detected known mobile device identities;said central server computer hosting a data processing program whichcomputes the probability of said user device proximity to said selectedlocation by processing the input sets of detected known mobile deviceidentities by an algorithm which utilizes said database; said centralserver program capable of notifying selected devices of user deviceproximity to said location; whereby the detection by said system of setsof one or more detected known mobile devices, whose combined proximityto each other exceeds a threshold value for probability, indicatesprobable proximity to the desired location.
 2. A system as in claim 1further comprising: said detected known mobile device identities are themedia access control (MAC) addresses associated with the wirelesscommunication interfaces of said detected devices.
 3. A system as inclaim 2 further comprising: said wireless communication interface forsaid detected devices is the BLUETOOTH® wireless data communicationprotocol.
 4. A system as in claim 2 further comprising: said wirelesscommunication interface for said detected devices is for one of theWi-Fi communication protocols defined by one of the IEEE 802.11standards.
 5. A system as in claim 1 further comprising: said centralserver computer probability computation utilizing a numerical weightassociated with each of the said detected known mobile deviceidentities; said numerical weight value modified and updated by saidproximity detection data processing program.
 6. A system as in claim 1further comprising: said user device operates to detect said knowndevices only when the said user device is detected to be in proximity toa vehicle associated with said user.
 7. A system as in claim 1 furthercomprising: said central server computer probability computation,utilizing information regarding dates and times of expected proximity ofthe user device and said location.
 8. A system as in claim 1 furthercomprising: said central server computer probability computation,utilizing information communicated by said user device regarding userinitiated notification of proximity to said location.
 9. A system as inclaim 1 further comprising: said system is operated wherein saidnotification and user device identity is communicated for the purpose ofentering such identification of a customer arrival into a customerservice queue.
 10. A system as in claim 1 further comprising: saidsystem does not include a satellite based location aware sensor.
 11. Asystem as in claim 1 further comprising: said system does not include afixed beacon based proximity detection device, and said system does notrequire any additional fixed devices at said location.
 12. A method fordetecting the proximity of a mobile device to a location comprising;compiling identification information for a plurality of detected knownmobile devices associated with one or more selected locations, saiddetected known mobile devices may or may not be located at theassociated locations while the system is operating; detecting said knownmobile devices by one or more user mobile devices; communicating saiddetected known mobile device identification information from said usermobile device to a central server computer by a wireless datatransmission; computing the proximity probability of said user device tosaid location by a data processing program on said central servercomputer; comparing said proximity probability to an arrival confidencethreshold value; notifying selected recipients of said user deviceproximity to said location if said proximity probability exceeds saidarrival confidence threshold; and updating selected parameters relatedto proximity probability calculation.
 13. A method as in claim 12further comprising; said proximity probability computation utilizing anumerical weight associated with each of the detected known deviceidentities; said numerical weight value modified and updated by saidproximity detection data processing program.
 14. A method as in claim 12further comprising: said user device operates to detect said knowndevices only when the said user device is detected to be in proximity toa vehicle associated with said user.
 15. A method as in claim 12 furthercomprising: said central server computer probability computationutilizing information regarding dates and times of expected proximity ofthe user device and said location.
 16. A method as in claim 12 furthercomprising: said central server computer probability computationutilizing information communicated by said user device regarding userinitiated notification of proximity to said location.
 17. A method as inclaim 12 further comprising: said method operating wherein saidproximity notification and user device identity is communicated for thepurpose of entering such identification of a customer arrival into acustomer service queue.
 18. A method as in claim 12 further comprising:said method does not use a satellite based location aware sensor.
 19. Amethod as in claim 12 further comprising: said method does not use afixed beacon based proximity detection device, and said method does notrequire any additional fixed devices at said location.